﻿// ******************************************************************
// * Copyright(c)  Steven Lu
// * Description   : Schema_BOM_PRODUCT_BOM_MASTER
// * CreateDate    : 2012/4/3 22:19:46
// * Creater       : CodeSmith
// * LastChangeDate: 2012/4/3 22:19:46
// * LastChanger   : 2012/4/3 22:19:46
// * Version Info  : 1.0 For ESOL
// ******************************************************************

using System;
using System.Collections.Generic;
using System.Text;
using Suzsoft.Smart.EntityCore;

namespace ESOL.Common.Schema
{
    [Serializable]
    public partial class BomProductBomMasterTable : TableInfo
    {
        public const string C_TableName = "BOM_PRODUCT_BOM_MASTER";

        public const string C_BOM_ID = "BOM_ID";
        public const string C_PARENT_BOM_ID = "PARENT_BOM_ID";
        public const string C_VERSION = "VERSION";
        public const string C_PRODUCT_ID = "PRODUCT_ID";
        public const string C_ITEM_TYPE = "ITEM_TYPE";
        public const string C_SEQENCE = "SEQENCE";
        public const string C_UNIT_DOSE = "UNIT_DOSE";
        public const string C_LOSS_RATE = "LOSS_RATE";
        public const string C_CONSTANT_SCRAP = "CONSTANT_SCRAP";
        public const string C_EFFECTIVE_DATE = "EFFECTIVE_DATE";
        public const string C_EXPIRATION_DATE = "EXPIRATION_DATE";
        public const string C_PICKING_PRODUCT_TECHNIC_ID = "PICKING_PRODUCT_TECHNIC_ID";
        public const string C_STATUS = "STATUS";
        public const string C_APPROVE_STATUS = "APPROVE_STATUS";
        public const string C_IS_CUSTOMER_FOR = "IS_CUSTOMER_FOR";
        public const string C_SUPPLIER_ID = "SUPPLIER_ID";
        public const string C_START_LOTS = "START_LOTS";
        public const string C_END_LOTS = "END_LOTS";
        public const string C_REMARK = "REMARK";

        public BomProductBomMasterTable()
        {
            _tableName = "BOM_PRODUCT_BOM_MASTER";
        }

        protected static BomProductBomMasterTable _current;
        public static BomProductBomMasterTable Current
        {
            get
            {
                if (_current == null)
                {
                    Initial();
                }
                return _current;
            }
        }

        private static void Initial()
        {
            _current = new BomProductBomMasterTable();

            _current.Add(C_BOM_ID, new ColumnInfo(C_BOM_ID, "BomId", true, typeof(string)));
            _current.Add(C_PARENT_BOM_ID, new ColumnInfo(C_PARENT_BOM_ID, "ParentBomId", false, typeof(string)));
            _current.Add(C_VERSION, new ColumnInfo(C_VERSION, "Version", false, typeof(string)));
            _current.Add(C_PRODUCT_ID, new ColumnInfo(C_PRODUCT_ID, "ProductId", false, typeof(string)));
            _current.Add(C_ITEM_TYPE, new ColumnInfo(C_ITEM_TYPE, "ItemType", false, typeof(string)));
            _current.Add(C_SEQENCE, new ColumnInfo(C_SEQENCE, "Seqence", false, typeof(int)));
            _current.Add(C_UNIT_DOSE, new ColumnInfo(C_UNIT_DOSE, "UnitDose", false, typeof(decimal)));
            _current.Add(C_LOSS_RATE, new ColumnInfo(C_LOSS_RATE, "LossRate", false, typeof(decimal)));
            _current.Add(C_CONSTANT_SCRAP, new ColumnInfo(C_CONSTANT_SCRAP, "ConstantScrap", false, typeof(decimal)));
            _current.Add(C_EFFECTIVE_DATE, new ColumnInfo(C_EFFECTIVE_DATE, "EffectiveDate", false, typeof(DateTime)));
            _current.Add(C_EXPIRATION_DATE, new ColumnInfo(C_EXPIRATION_DATE, "ExpirationDate", false, typeof(DateTime)));
            _current.Add(C_PICKING_PRODUCT_TECHNIC_ID, new ColumnInfo(C_PICKING_PRODUCT_TECHNIC_ID, "PickingProductTechnicId", false, typeof(string)));
            _current.Add(C_STATUS, new ColumnInfo(C_STATUS, "Status", false, typeof(string)));
            _current.Add(C_APPROVE_STATUS,new ColumnInfo(C_APPROVE_STATUS,"ApproveStatus",false,typeof(int)));
            _current.Add(C_IS_CUSTOMER_FOR, new ColumnInfo(C_IS_CUSTOMER_FOR, "IsCustomerFor", false, typeof(int)));
            _current.Add(C_SUPPLIER_ID, new ColumnInfo(C_SUPPLIER_ID, "SupplierId", false, typeof(string)));
            _current.Add(C_START_LOTS, new ColumnInfo(C_START_LOTS, "StartLots", false, typeof(string)));
            _current.Add(C_END_LOTS, new ColumnInfo(C_END_LOTS, "EndLots", false, typeof(string)));
            _current.Add(C_REMARK, new ColumnInfo(C_REMARK, "Remark", false, typeof(string)));

        }

        public ColumnInfo BOM_ID
        {
            get { return this[C_BOM_ID]; }
        }

        public ColumnInfo PARENT_BOM_ID
        {
            get { return this[C_PARENT_BOM_ID]; }
        }

        public ColumnInfo VERSION
        {
            get { return this[C_VERSION]; }
        }

        public ColumnInfo PRODUCT_ID
        {
            get { return this[C_PRODUCT_ID]; }
        }

        public ColumnInfo ITEM_TYPE
        {
            get { return this[C_ITEM_TYPE]; }
        }

        public ColumnInfo SEQENCE
        {
            get { return this[C_SEQENCE]; }
        }

        public ColumnInfo UNIT_DOSE
        {
            get { return this[C_UNIT_DOSE]; }
        }

        public ColumnInfo LOSS_RATE
        {
            get { return this[C_LOSS_RATE]; }
        }

        public ColumnInfo CONSTANT_SCRAP
        {
            get { return this[C_CONSTANT_SCRAP]; }
        }

        public ColumnInfo EFFECTIVE_DATE
        {
            get { return this[C_EFFECTIVE_DATE]; }
        }

        public ColumnInfo EXPIRATION_DATE
        {
            get { return this[C_EXPIRATION_DATE]; }
        }

        public ColumnInfo PICKING_PRODUCT_TECHNIC_ID
        {
            get { return this[C_PICKING_PRODUCT_TECHNIC_ID]; }
        }

        public ColumnInfo STATUS
        {
            get { return this[C_STATUS]; }
        }

        public ColumnInfo APPROVE_STATUS
        {
            get {return this[C_APPROVE_STATUS]; }
        }

        public ColumnInfo IS_CUSTOMER_FOR
        {
            get { return this[C_IS_CUSTOMER_FOR]; }
        }

        public ColumnInfo SUPPLIER_ID
        {
            get { return this[C_SUPPLIER_ID]; }
        }

        public ColumnInfo START_LOTS
        {
            get { return this[C_START_LOTS]; }
        }

        public ColumnInfo END_LOTS
        {
            get { return this[C_END_LOTS]; }
        }

        public ColumnInfo REMARK
        {
            get { return this[C_REMARK]; }
        }



    }
}

